Wireless backhaul networks are deployed to carry the traffic between a wireless access network and the core network. For example, a wireless backhaul network may comprise a plurality of hubs, each connected to the wired core network, via Ethernet. Each hub serves multiple remote backhaul modules (RBM), in a point-to-multipoint or point-to-point configuration, using a wireless channel. Each RBM is deployed close to an access network base station, such as a small cell base station, and connected to the base station via a cable. The hubs are deployed at the locations where wired, high capacity, access to the core network is available, e.g. at a fiber point-of-presence.
In this type of wireless backhaul network, time division duplexing (TDD) is used to separate the traffic transmitted from a hub to an RBM (downlink) and the traffic transmitted from an RBM to a hub (uplink). Thus, in multi-hub deployments, the hubs are required to be synchronized in time for efficient network operations. Thus each hub comprises a clock, and a method is required for synchronizing clocks of each hub.
The IEEE 1588 Precision Time Protocol (PTP) is a timing protocol used to synchronize distributed clocks throughout a network. For background information on IEEE 1588, and known methods for clock synchronization using PTP, reference is made to the following documents:    (1) “1588-2008—IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems,” Internet: http://standards.ieee.org/findstds/standard/1588-2008.html, (Aug. 27, 2014);    (2) S. B. Moon, P. Skelly, and D. Towsley, “Estimation and removal of clock skew from network delay measurements”, in Proc. Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies (INFOCOM '99), 21-25 Mar. 1999, which discloses methods comprising linear programming for clock synchronization;    (3) C. Iantosca, C. Heitz, and H. Weibel, “Synchronizing IEEE 1588 clocks under the presence of significant stochastic network delays,” in Proc. 2005 Conference on IEEE 1588, C H Winterthur, October 2005, which discloses methods comprising linear regression for clock synchronization;    (4) Recommendation ITU-T G.8260 (2012), Definitions and terminology for synchronization in packet networks (https://www.itu.int/rec/T-REC-G.8260/en);    (5) Application note: “Testing IEEE 1588v2 slave clocks CX5003” by Calnex Solution Ltd. (http://www.calnexsol.com/downloads/application-notes-and-whitepapers.html);    (6) M. Anyaegbu, C. Wang, and W. Berrie, “Dealing with Packet Delay Variation in IEEE 1588 Synchronization Using a Sample-Mode Filter,” IEEE Intelligent Transportation Systems Magazine, vol. 5, no. 4, pp. 20-27, 2013.
The IEEE 1588 standard provides for a hierarchical master-slave architecture for synchronization of distributed network clocks, in which a high-precision clock exchanges timing information with a clock of each node in the network. The high-precision clock is referred to as the master clock, while the clock of each node is referred to as a slave clock. Based on the timing information exchanged between the master clock and each slave clock, each slave clock is adjusted in an effort to achieve synchronization with the master clock.
Timing information between the master and slave clocks is exchanged through the following two main types of message exchange, as illustrated schematically in FIG. 3:                SYNC messages in the forward link (master-to-slave): The master clock periodically time-stamps packets and sends them to the slave clock, i.e., each transmitted packet i is time-stamped with t1(i). Upon the reception of packet i, the slave clock time-stamps the received packet with t2(i); and        DELAY_REQ messages in the reverse link (slave-to-master): The slave clock periodically time-stamps packets and sends them to the master clock, i.e., each transmitted packet i is time-stamped with t3(i). Upon the reception of packet i, the master clock time-stamps the received packet with t4(i) and sends back t4(i) to the slave clock.        
Ideally, if both clocks are perfectly synchronized in frequency and phase, and if there is no queuing delay, then                i. t2(i)−t1(i)=tmpd,        ii. t4(i)−t3(i)=tmpd,where tmpd is the mean propagation delay, assuming symmetry in the forward and reverse links.        
However, due to frequency and phase offsets between the master and slave clocks, as well as queuing delay and time-stamping jitter, we have (Iantosca et al., ref. (3):t2(i)−t1(i)=tmpd+αt1(i)+O+QF(i)+JF(i),t4(i)−t3(i)=tmpd−αt4(i)−O+QR(i)+JR(i),where                α is the frequency drift between the master clock and slave clock,        O is the actual phase offset between the master clock and slave clock,        QF(i), QR(i) are the non-negative random queuing delay with unknown probability distribution, in the forward and reverse direction, respectively,        JF(i), JR(i) are the random jitter modelled as Gaussian random variable with zero mean and known standard deviation, in the forward and reverse direction, respectively.        
Thus, the objective of clock synchronization is to continuously adjust the frequency of the slave clock so that the frequency drift between the master and slave clock is approximately zero, i.e. α≈0, and the actual phase offset between the master and slave clock is approximately zero, i.e. O≈0.
An object of the present invention is to provide an improved or alternative method and system for network-wide clock synchronization in communications networks, and more particularly a method and system for clock synchronization in wireless backhaul networks comprising fixed or stationary nodes, including small cell non-line-of-sight (NLOS) backhaul networks.